Главная arrow Микрокомпьютер arrow Архитектура ЭВМ
Как начинался компьютер
Компьютерная революция
Двоичный код
Разработки военных лет
Интегральные микросхемы
Микрокомпьютер
Персоны
Сеть
Язык компьютера
Развитие ПО
Гибкие системы
Средства разработки
Информатика
Вычислительная наука
Операционные системы
Искусственный интеллект
Предыстория
Поиск
Знания и рассуждения
Логика
Робототехника
 

 
Архитектура ЭВМ Печать
 
При включении компьютера электрические сигналы проходят через всю систему, жестко предопределяя последовательность действий. Кварцевый генератор тактовых импульсов посылает сигналы во все схемы компьютера с частотой порядка нескольких миллионов импульсов в секунду. Эти импульсы (не зависимые от других управляющих сигналов машины) точно синхронизируют каждое действие. На первом же такте сигнал сброса автоматически очищает все внутренние ячейки центрального процессора для временного хранения данных (регистры) от случайных зарядов, возникших при скачках напряжения или оставшихся от предшествующей работы машины. При очищении специального регистра процессора, называемого программным счетчиком, его содержимое становится равным нулю.

Теперь машина готова к процессу, называемому начальной загрузкой, который протекает в несколько этапов. При следующем тактовом импульсе в программный счетчик заносится адрес, подготовленный еще при конструировании компьютера. Адрес обычно устанавливается при помощи набора ручных переключателей. Адрес - серия высоких и низких уровней напряжения (на рисунке представлена в виде двоичных разрядов 11110010) - указывает ячейку ПЗУ, в которой записана первая инструкция программы начальной загрузки. (На рисунке показан адрес, состоящий всего из 8 бит, в действительности же у большинства микрокомпьютеров адрес содержит 16-20 бит.)

Программы начальной загрузки различны у разных машин. Иногда компьютер сразу же обращается к внешней памяти, накопителю на магнитных дисках, и следует записанным там инструкциям. В рассматриваемой здесь системе компьютер начинает с проверки внутренних компонентов схем.

Центральный процессор выполняет программу начальной проверки, совершая тысячи мелких шагов; в данном случае каждый шаг заключается в обработке байта данных. Этот байт может представлять собой часть адреса, код инструкции или элемент данных, найденный по определенному адресу (скажем, цифру или букву алфавита). Байт - это набор сигналов с высоким или низким уровнем напряжения, которые передаются либо по адресной шине (желтая полоса), либо по шине данных (красная).
 
 
При включении питания в машине начинается цепочка операций, выполняемых настолько быстро, что они кажутся почти одновременными. По первому тактовому импульсу поступает сигнал сброса, очищающий все регистры центрального процессора и устанавливающий программный счетчик на нуль. Программный счетчик, выступающий в роли диспетчера, указывает процессору, где искать следующую инструкцию.
 
 
На следующем такте заранее заготовленный фиксированный адрес поступает в программный счетчик. В данном примере этот адрес указывает на ячейку ПЗУ, где хранится первая инструкция неизменяемой программы начальной проверки и загрузки. При следующем тактовом сигнале ЦП выставляет адрес, содержащийся в программном счетчике (11110010), на адресную шину (желтая полоса). К концу этого сигнала в программном счетчике появляется адрес следующей инструкции программы.
 
 
По приходу тактового импульса на линиях адресной шины фиксируются высокие и низкие уровни напряжения, представляющие адрес первой инструкции программы начальной проверки. (Адрес следующей инструкции уже подготовлен в программном счетчике.) На следующем такте схемы дешифратора адреса определяют, где находится ячейка с данным адресом. Очередной тактовый импульс активизирует соответствующую микросхему ПЗУ.
 
 
По мере прихода очередных тактовых импульсов управляющие схемы ПЗУ обращаются к нужной ячейке памяти (ее биты изображены в виде желтых кружочков) в выбранном кристалле. Как показано на рисунке, двоичная цепочка, представляющая адрес, отличается от цепочки, представляющей информацию, которая хранится по этому адресу: адрес лишь указывает, где хранится элемент данных, но не сами данные. В показанном здесь случае затребованная цепочка данных представляет собой код первой инструкции в начальной последовательности команд. ЦПУ хотело бы «прочитать» этот код, но должно ждать специального разрешающего сигнала и очередного тактового импульса.
 
 
На следующем такте ЦПУ посылает сигнал «чтение» микросхеме ПЗУ, которая мгновенно подает информацию в шину данных. Это тщательно скоординированное сочетание управляющих сигналов и тактовых импульсов гарантирует, что на шину не поступит никакой информации, прежде чем устройство, для которого она предназначена, не будет готово к приему. Благодаря тому, что тактовый импульс и сигнал «чтение» проходят через один и тот .же логический вентиль «и», информация не может попасть на шину данных до тех пор, пока на обеих линиях сигналы не будут соответствовать логическому значению «истино».
 
 
Попав на шину данных, байт информации, извлеченный из ПЗУ в соответствии с начальным адресом программы, поступает в ЦП. На следующем такте ЦП фиксирует байт данных, принятый по шине, и посылает его в свои регистры. Поскольку это первый элемент данных, полученный процессором с момента включения питания, он воспринимается как код инструкции, который дешифрируется при следующем тактовом импульсе. Последовательность - программный счетчик, адресная шина, ПЗУ, шина данных, дешифрация команды - повторяется сотни раз, пока все байты, составляющие программу начальной проверки, не будут один за другим переданы процессору и выполнены.